'\" t
.TH "SYSTEMD\-ID128" "1" "" "systemd 254" "systemd-id128"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
systemd-id128 \- Generate and print sd\-128 identifiers
.SH "SYNOPSIS"
.HP \w'\fBsystemd\-id128\fR\ 'u
\fBsystemd\-id128\fR [OPTIONS...] new
.HP \w'\fBsystemd\-id128\fR\ 'u
\fBsystemd\-id128\fR [OPTIONS...] machine\-id
.HP \w'\fBsystemd\-id128\fR\ 'u
\fBsystemd\-id128\fR [OPTIONS...] boot\-id
.HP \w'\fBsystemd\-id128\fR\ 'u
\fBsystemd\-id128\fR [OPTIONS...] invocation\-id
.SH "DESCRIPTION"
.PP
\fBid128\fR
may be used to conveniently print
\fBsd-id128\fR(3)
UUIDs\&. What identifier is printed depends on the specific verb\&.
.PP
With
\fBnew\fR, a new random identifier will be generated\&.
.PP
With
\fBmachine\-id\fR, the identifier of the current machine will be printed\&. See
\fBmachine-id\fR(5)\&.
.PP
With
\fBboot\-id\fR, the identifier of the current boot will be printed\&.
.PP
Both
\fBmachine\-id\fR
and
\fBboot\-id\fR
may be combined with the
\fB\-\-app\-specific=\fR\fB\fIapp\-id\fR\fR
switch to generate application\-specific IDs\&. See
\fBsd_id128_get_machine\fR(3)
for the discussion when this is useful\&.
.PP
With
\fBinvocation\-id\fR, the identifier of the current service invocation will be printed\&. This is available in systemd services\&. See
\fBsystemd.exec\fR(5)\&.
.PP
With
\fBshow\fR, well\-known IDs are printed (for now, only GPT partition type UUIDs), along with brief identifier strings\&. When no arguments are specified, all known IDs are shown\&. When arguments are specified, they must be the identifiers or ID values of one or more known IDs, which are then printed\&. Combine with
\fB\-\-uuid\fR
to list the IDs in UUID style, i\&.e\&. the way GPT partition type UUIDs are usually shown\&.
.SH "OPTIONS"
.PP
The following options are understood:
.PP
\fB\-p\fR, \fB\-\-pretty\fR
.RS 4
Generate output as programming language snippets\&.
.RE
.PP
\fB\-a \fR\fB\fIapp\-id\fR\fR, \fB\-\-app\-specific=\fR\fB\fIapp\-id\fR\fR
.RS 4
With this option, an identifier that is the result of hashing the application identifier
\fIapp\-id\fR
and the machine identifier will be printed\&. The
\fIapp\-id\fR
argument must be a valid sd\-id128 string identifying the application\&.
.RE
.PP
\fB\-u\fR, \fB\-\-uuid\fR
.RS 4
Generate output as a UUID formatted in the "canonical representation", with five groups of digits separated by hyphens\&. See the
\m[blue]\fBwikipedia\fR\m[]\&\s-2\u[1]\d\s+2
for more discussion\&.
.RE
.PP
\fB\-h\fR, \fB\-\-help\fR
.RS 4
Print a short help text and exit\&.
.RE
.PP
\fB\-\-version\fR
.RS 4
Print a short version string and exit\&.
.RE
.SH "EXIT STATUS"
.PP
On success, 0 is returned, a non\-zero failure code otherwise\&.
.SH "SEE ALSO"
.PP
\fBsystemd\fR(1),
\fBsd-id128\fR(3),
\fBsd_id128_get_machine\fR(3)
.SH "NOTES"
.IP " 1." 4
wikipedia
.RS 4
\%https://en.wikipedia.org/wiki/Universally_unique_identifier#Format
.RE
